Dynamic representation process and system for a space of characterized objects enabling recommendation of the objects or their characteristics

ABSTRACT

A process for generating a dynamic and contextualized cartography of information including a step of collaborative filtration which includes determining at least one affinity group formed from a set of profiles, wherein the distance from the profile to a reference object is less than a threshold value, a step of correlation analysis of characteristics of the reference object and objects of the affinity group projecting the characteristics into a multidimensional space, and a step of construction of an image composed of activatable zones representing the characteristics of the reference object and of all or part of the characteristics of the affinity group, and zones representing links among the characteristics, each zone providing direct or indirect access to one or more digital files.

RELATED APPLICATION

[0001] This is a continuation of International Application No. PCT/FR01/03798, with an international filing date of Nov. 30, 2001, which is based on French Patent Application No. 00/15599, filed Dec. 1, 2000, and French Patent Application No. 00/16241, filed Dec. 13, 2000.

FIELD OF THE INVENTION

[0002] This invention pertains to the field of the dynamic representation of information to facilitate organization of informational objects as a function of their categorial relationships (characteristics) to enable rapid access to objects in this space and to implement recommendations of the objects or their characteristics.

BACKGROUND

[0003] The considerable increase in the amount of information accessible especially online via the Internet or in private information systems makes it difficult to provide the user with rapid access to pertinent information.

[0004] It has, therefore, been perceived as necessary during recent years to provide the user with a visual synthesis of this information space based on an analysis of the correlations existing among the information units. The user can employ such cartographic tools to orient himself in a multidimensional representation of the information system to more rapidly reach the information of interest.

[0005] Various information cartography solutions are known in the state of the art. For example, WO 95/04960 pertains to a computer-based program for managing information extracted from a structured database such as a relational database. The processor constructs a multiplicity of object instances each of which has its own unique object identification map which produces a cartography between the object instance and at least one row of the structured database. The processor constructs a single structure of cohesive data, called an “object ante-memory”, which contains all of the object instances and represents the information retrieved from the structured database in a form suitable for use by one or more object-oriented programs.

[0006] WO 95/06292 pertains to a computerized tool for modeling database conceptions and the specification of the interrogations of the data that they contain in the form of a fact tree. An interrogation cartography is used to generate interrogations once the fact tree has been verified.

[0007] WO 98/40832 pertains to a process used for recommending articles to users by means of profiles of users of automated cooperative stores which are processed like articles stored in a memory. Profiles of articles can also be stored in the memory, the article profiles associating the users with a rating that a user attributes to the article, or with a rating that the system attributes by deduction to the user. The user profiles comprise supplementary information concerning the user or information associated with the rating attributed by the user to an article. User profiles are retrieved and the ratings used for calculating similitude factors with other users. The similitude factors, sometimes linked to confidence factors, are used for selecting a set of neighboring values. The neighboring values are weighted according to their respective similitude factors to obtain a rating prediction for an article that is part of the domain under consideration.

[0008] An object serving to provide a storage of hierarchical isolated data can be used in an article recommendation process for a given user. The data object is associated with an element of physical memory and provides an interface for storing and retrieving data from the physical memory element. A system enabling activation of an information market comprises a central server storing data in a memory element. The data can be encrypted or not encrypted. In either case, the server can also store a table associating data elements and nodes with an authorization value. If a node requests data for which the authorization value of the table grants access, the server transmits the data to the node. If the data are encrypted, the server can transmit the encrypted data or decrypt the encrypted data for the node before transmitting them.

[0009] It would, therefore, be advantageous to provide improved tools and processes of information cartography by enabling a new mode of visual organization of the means of information localization and referencing.

SUMMARY OF THE INVENTION

[0010] The invention relates to a process for generating a dynamic and contextualized cartography of information including a step of collaborative filtration which includes determining at least one affinity group formed from a set of profiles, wherein the distance from the profile to a reference object is less than a threshold value, a step of correlation analysis of characteristics of the reference object and objects of the affinity group projecting the characteristics into a multidimensional space, and a step of construction of an image composed of activatable zones representing the characteristics of the reference object and of all or part of the characteristics of the affinity group, and zones representing links among the characteristics, each zone providing direct or indirect access to one or more digital files.

BRIEF DESCRIPTION OF THE DRAWINGS

[0011]FIG. 1 is a schematic diagram illustrating an example of preplacement of the base characteristics during the correlation analysis.

[0012]FIG. 2 is a schematic diagram illustrating an example of preplacement of the characteristics (other than the base characteristics) during the correlation analysis.

[0013]FIG. 3 is a diagram illustrating an example of the system interface using the analogy of the “neighborhood map” in the domain of auction Web sites, with examples of menus.

[0014]FIG. 4 is a diagram illustrating an example of the system interface using the analogy of the “neighborhood map” applied to the domain of online commerce Web sites.

[0015]FIG. 5 is a schematic diagram illustrating an example of the system interface using the “store layout” analogy applied to the domain of online commerce Web sites.

[0016]FIG. 6 is a schematic diagram of the functional architecture of a subset of the system called “precalculation server”.

[0017]FIG. 7 is a schematic diagram of the functional architecture of a subset of the system called “map server”.

DETAILED DESCRIPTION

[0018] For a Web site in, particular, the user is provided with a synthesized and personalized vision of that which the user has already done (histories), where the user is situated in relation to other users and the user's own characteristics and where the user can go (prospects of products/services). Thus, the representation becomes a means for navigation on the site.

[0019] According to its most general sense, the invention pertains to a process for the generation of a dynamic cartography of an information space composed of objects described in the form of elementary descriptors called “characteristics”. Each object and characteristic can be associated with addresses of digital files.

[0020] This involves constructing for a user a synthesized vision of objects and their characteristics in the form of a multidimensional representation called a “map”. This map is generated by an analysis of the correlations among the characterized objects.

[0021] The map makes it possible to more rapidly reach the objects or characteristics likely to interest the user and make recommendations of the objects or characteristics. The map can be personalized by taking into account the specificities of the user.

[0022] The map is constituted by a set of activatable zones capable of accessing the represented objects, or the characteristics or other information pertaining to them such as recommendations. This access can be performed directly or by the intermediary of a menu.

[0023] The process more generally comprises sorting and filtering characterized objects and then constructing an image enabling access to the descriptions of the objects and their characteristics via activatable zones positioned as a function of the degree of correlation between the characteristics of the objects, characterized in that it comprises:

[0024] a first step of evaluation of the profile of each object by means of its characteristics (the profile being a description of the set of characteristics of the object),

[0025] a second step of collaborative filtration including determining at least one affinity group constituted by the set of profiles the distance of which in relation to a given profile is less than a threshold value,

[0026] a third step of correlation analysis of the characteristics of the objects of the affinity group projecting the characteristics into a multidimensional space, and

[0027] a fourth step of construction of an image composed of activatable zones representing the characteristics of the affinity groups, activatable zones representing the affinity group objects and the zones representing the links among the characteristics, each zone providing direct or indirect access to one or more digital files. During this step, recommendations of characteristics or subcharacteristics can be calculated for a given zone in relation to a particular object which is then referred to as “reference object”.

[0028] One implementation of the fourth step consists of using the analogy of a “neighborhood map”, describing the characteristics in the form of “squares”, the zones representing the objects by “neighborhoods”, the zones representing the links among characteristics by “streets”. FIG. 4 illustrates an example of this type of implementation.

[0029] One implementation of the fourth step includes using the analogy of the “store layout” map describing the zones representing the characteristics in the form of “departments”, the zones representing the links among characteristics by the “aisles” between the departments, the zones representing the objects by polygons in the “aisles”. FIG. 5 illustrates an example of this type of implementation.

[0030] The process preferably includes a step of calculating the implicit characteristics of a user, consisting of recording in a memory the parameters associated with descriptions of historical actions of said user. The descriptors of the historical actions of the user can be constituted notably by the identifiers of the pages consulted by the user.

[0031] According to a variant, the process according to the invention includes a step of calculating the explicit characteristics of a user, consisting of recording in a memory the parameters defined from a preferences table. These characteristics used for data analysis can be visible or not visible on the graphical representation.

[0032] A better understanding of the invention will be obtained from the description below with reference to the attached figures in relation to a nonlimitative example of implementation.

[0033] This description comprises a first part related to the methods for the calculation of the components employed by the invention, a second part describing several examples of interfaces and a third part presenting an example of functional decomposition of a system for the implementation of the invention.

[0034] The process according to aspects of the invention is based on the characterization of objects by characteristics and subcharacteristics. An “object” is an element of a set of objects that can be differentiated by elemental information describing them and called “characteristics”. It can be applied to a user, a site or any other form of information. The objects and the characteristics can be positioned on the graphical representation referred to as a “map”.

[0035] The map can be calculated according to the characteristics of a reference object to personalize it (i.e., to take into account the point of view of the object).

[0036] As an example, for the cartography of the information contained in a Web auction site:

[0037] the objects are the users (internauts),

[0038] the reference object is the “current” user (connected to the site),

[0039] the characteristics are the headings defined by the site,

[0040] the subcharacteristics correspond to the auctions in progress,

[0041] the user profile is, thus, composed of implicit characteristics deduced from the transaction history (headings where the user implemented sales and purchases or auctions) and the navigation history (headings consulted by the user).

[0042] The following definitions are established:

[0043] the set of objects O={o₀, o₁, . . . o_(k), . . . O_(m−1),}, m=Card(O),

[0044] the set of the characteristics C={c₀, c₁, . . . c_(i), . . . C_(n−1)} describing the objects, n=Card(C), and

[0045] the set of the subcharacteristics C′=(c′₀, c′₁, . . . c′_(i). . . . c′_(P−1)} describing the objects, p=Card (C′).

[0046] For each characteristic c_(i)∈C′ there is defined a set of associated subcharacteristics noted as C′_(j) such that C′_(i)⊂C′. We should note that C′=∪C′_(i) (i.e., the C′_(i) form a partition of C′).

[0047] The profiles are then defined, formed by a set of characteristics that can be weighted. These characteristics can be heterogeneous. Multiple profiles can be defined for the same object.

[0048] The matrix of the noted profiles is defined as

[0049] P=P_(m,n)(R)=(P_(k,i))

[0050] in which P_(k,i) is a weighting describing the value of the characteristic c_(i) for the object o_(k).

[0051] Each object o_(k) is, thus, described by a vector (p′_(k,0), . . . , p′_(k,i) . . . , p′_(k,p−1)).

[0052] We defined the matrix P′=P′_(m,p)(R)=(p′_(k,i)) in which p′_(k,i) is a weighting describing the value of the subcharacteristic c′_(i) for the object o_(k).

[0053] Each object o_(k) is, thus, described by a vector (p_(k,0), . . . , p_(k,i) . . . , p_(k,n−1)).

[0054] We defined:

[0055] the set of characteristics linked to an object o_(k) written as C(o_(k))={c_(i)∈C/p_(k,i)≠0}

[0056] the set of subcharacteristics linked to an object o_(k) written as C′(o_(k))={c′_(i)∈C′/p_(k,i)≠0}

[0057] the set of objects linked to a characteristic c_(i) written as O(c_(i))={o_(k)∈O/p_(k,i)≠0}

[0058] the set of objects linked to a subcharacteristic c′_(i) written as O(c′_(i))={o_(k)∈O/p′_(k,i)≠0}

[0059] Ray Tracing

[0060] We defined R ray tracing matrix/R_(n,n)(N)=(r_(i,j)).

[0061] This matrix expresses the links created by the objects between the characteristics. $\begin{matrix} {r_{i,j} = {{ray}\quad {tracing}\quad {between}\quad {two}\quad {characteristics}\quad c_{i}\quad {and}\quad c_{j}}} \\ {= {{Card}\quad \left( {{O\left( c_{i} \right)}\bigcap{O\left( c_{j} \right)}} \right)}} \\ {= {{number}\quad {of}\quad {objects}\quad {common}\quad {to}\quad {two}\quad {{characteristics}.}}} \end{matrix}$

[0062] We are thus dealing with a symmetrical matrix, i.e., r_(i,j)=r_(i,j).

[0063] r_(i,i) is the number of objects o_(k) in which p_(k,i)≠0, i.e., the number of objects having c_(i) as a characteristic. This is the frequency of the characteristic c_(i), written as f_(i).

[0064] By extension we define:

[0065] the vector of ray tracing of a characteristic i: r_(i)=(r_(i,0), r_(i,1), . . . r_(i,j), . . . r_(i,n−1)):

[0066] the set of ray tracing of a characteristic=R_(i)={c_(j)∈C/r_(i,j)≠0}, i.e., the set of characteristics having at least common object with the characteristic c_(i).

[0067] the set of ray tracing of a set A of characteristics written $R_{A} = \underset{{l/c_{i}} \in A}{\bigcup R_{I}}$

[0068] We define:

[0069] the vector of ray tracing of a set A⊂C: r_(A)/(r_(A))_(n)(N)=r_(A,j)

[0070] in which $R_{{Aj} -}\text{Card}\quad \left( {\left( {\bigcup\limits_{{l/c_{i}} \in \quad A}\quad {O\quad \left( c_{i} \right)}} \right)\bigcap\quad {O\left( c_{j} \right)}} \right)$

[0071] the Power of ray tracing of a characteristic $= {\Pr = {{\sum\limits_{{j/c_{j}} \in \quad C}^{\quad}r_{i,j}} = {\sum\limits_{{k/o_{r}} \in \quad {o{(c_{i})}}}^{\quad}{{Card}\quad \left( {C\left( o_{k} \right)} \right)}}}}$

[0072] Weighted Ray Tracing

[0073] Simple ray tracing does not necessarily allow for expression of the force of the link between two characteristics in its context (i.e., all of the objects). Thus, for example: a characteristic c_(i) having a single object common with c_(j) would give us r_(i,j)=1 no matter the frequency of c_(i) and c_(j) (1 occurrence or 1000!). The importance of the resultant link is nevertheless different.

[0074] This is why we define the exclusive weighted ray tracing between two characteristics c_(i) and c_(j) to evaluate the importance of the link between characteristics.

[0075] rp_(i,j)=weighted ray tracing between characteristics c_(i) and $c_{j} = \frac{r_{i,j}}{\min \quad \left( {f_{i},f_{j}} \right)}$

[0076] Note that rp_(i,j)≦1.

[0077] This coefficient expresses the power of the link between c_(i) and c_(j) in the form of a coefficient comprised between 0 and 1. If rp_(i,j)=1, then (R_(i)−R_(j)) or (R_(j)−R_(i))=Ø, i.e., when the characteristic c_(i) is in an object, c_(j) is also in this object or when the characteristic c_(j)=in an object, c_(i) is also in this object.

[0078] By extension, we thus define:

[0079] the weighted ray tracing between a characteristic c_(i) and a set A of characteristic written ${rp}_{i,A} = {{\frac{r_{i,A}}{\min \quad \left( {f_{A},f_{j}} \right)}\quad {in}\quad {which}\quad f_{A}} = {\frac{\max}{{j/c_{j}} \Subset C}\left( f_{j} \right)}}$

[0080] the weighted Power of ray tracing of a characteristic $c_{i} = {{Prp}_{i} = {\sum\limits_{{j/c_{j}} \in \quad C}^{\quad}{rp}_{i,j}}}$

[0081] Exclusive Weighted Ray Tracing

[0082] We needed a coefficient enabling measurement of the importance of that which differentiates the ray tracing of two characteristics to construct a base of characteristics (i.e., a set of characteristics allowing expression of other characteristics). This coefficient provides assurance that the differentiation results from the two characteristics. The symmetrical difference between R_(i) and R_(j) (written R_(i)ΔR_(j)) is, thus, not sufficient because, despite a strong symmetrical difference, it is still possible to have R_(i)−R_(j) or R_(j)−R_(i)=Ø.

[0083] This is why we define RP_((ex)) exclusive weighted ray tracing matrix/RP_((ex)n,n)(N):=(rp_((ex)i,j))

[0084] rp_((ex)i,j)=exclusive weighted ray tracing between two characteristics c_(i) and c_(j) ${rp}_{{{({ex})}i},j} = {\min \quad \left( {{\sum\limits_{{{a/{rp}_{i,a}} - {rp}_{j,a}} > 0}^{\quad}\left( {{rp}_{i,a} - {rp}_{j,a}} \right)},{\left. \quad{\sum\limits_{{{a/{rp}_{j,a}} - {rp}_{i,a}} > 0}^{\quad}\left( {{rp}_{j,a} - \quad {rp}_{i,a}} \right)} \right) \times \quad \left\lbrack \quad {\min\left( \quad \left. \quad{{\sum\limits_{{a/c_{a}} \in \quad {R_{i} - R_{j}}}^{\quad}\left( {rp}_{i,a} \right)},\quad {\left. \quad{\sum\limits_{{a/c_{a}} \in \quad {R_{j} - R_{i}}}^{\quad}\left( {rp}_{j,a} \right)} \right)\quad + \quad 1}}\quad \right\rbrack \right.} \right.}} \right.}$

[0085] =common level of differentiation between two characteristics c_(i) and c_(j).

[0086] This is, therefore, a symmetrical matrix, i.e., rp_((ex)i,j)=rp_((ex)j,i)

[0087] By definition, we define the exclusive weighted ray tracing between a set A⊂C and a characteristic c_(i) ${rp}_{{{({ex})}i},A} = {\min \quad \left( {{\sum\limits_{{{a/{rp}_{i,a}} - {rp}_{j,a}} > 0}^{\quad}\left( {{rp}_{i,a} - {rp}_{A,a}} \right)},{\left. \quad{\sum\limits_{{{a/{rp}_{A,a}} - {rp}_{i,a}} > 0}^{\quad}\left( {{rp}_{A,a} - \quad {rp}_{i,a}} \right)} \right) \times \quad \left\lbrack \quad {\min\left( \quad {\quad{{\sum\limits_{{a/c_{a}} \in \quad {R_{i} - R_{A}}}^{\quad}\left( {rp}_{i,a} \right)},\quad \left. \quad{{\sum\limits_{{a/c_{a}} \in \quad {R_{A} - R_{i}}}^{\quad}\left( {{rp}_{A,a}\quad \left. \quad\quad \right)}\quad \right)}\quad + \quad 1}\quad \right\rbrack}} \right.} \right.}} \right.}$

[0088] We defined the exclusive weighted ray tracing Power of a characteristic c_(i)= ${Prp}_{{({ex})}i} = {\sum\limits_{{j/c_{j}} \in \quad C}^{\quad}{rp}_{{{({ex})}i},j}}$

[0089] 1. Filtering and Recommendation

[0090] Coefficient of Affinity

[0091] This involves expressing a distance between two objects as a function of their respective profile. This value makes it possible both to define the affinity group of an object o_(k) to limit the analysis to these objects and also to assist in the calculation of recommendation.

[0092] This distance takes into account both the intersection, but also the symmetrical difference between the two profiles. Two objects having the same intersection, but a divergent symmetrical difference, would not be considered to be similar.

[0093] Thus, we define the coefficient of affinity between two objects o_(k) and o_(l), written A_(i,j) such that $A_{k,1} = \frac{\left. {{\left( {\sum\limits_{{i/c_{i}} \in {{C{(o_{k})}}\bigcap\quad {C{(o_{l})}}}}{\psi \left( {{{p_{k,i} - p_{l,i}}},{Max}_{p}} \right)}} \right) \times {Card}\quad \left( {{C\left( o_{k} \right)}\Delta \quad {C\left( o_{l} \right)}} \right)} + 1} \right)}{{Card}\quad \left( {{C\left( o_{k} \right)}\bigcap\quad {C\left( o_{l} \right)}} \right)}$

[0094] wherein Max_(p) is the maximal value of p_(k,i) and

[0095] ψ is a function defining the importance of the weightings in the coefficient of affinity.

[0096] By default, we set ψ(p,Max_(p))=log _(Maxp)(p+1) which minimizes the effect of the weighting.

[0097] We define the affinity group of an object o_(k) written Aff_(k) such that

[0098] Aff_(k)={o₁∈O/A_(k,1)≧A_(min)} in which A_(min) is a threshold set by the WPS manager.

[0099] Coefficient of Recommendation

[0100] We define the coefficient of recommendation of a characteristic c_(i) for an object o_(k). This coefficient indicates the level of recommendation: the higher the coefficient, the more pertinent is the recommendation; the smaller the coefficient, the more it is subject to caution.

[0101] If p_(k,i)≠0, then ${{Rec}_{i} = \frac{\sum\limits_{{l/o_{l}} \in \quad {Aff}_{i}}\left( \frac{\psi \left( {p_{l,i},{Max}_{p}} \right)}{A_{k,1}} \right)}{{Card}\quad \left( {{O\left( c_{i} \right)}\bigcap{Aff}_{i}} \right)}},$

[0102] if not then Rec_(i)=0

[0103] wherein ψ is the function as defined above.

[0104] We define the coefficient of recommendation of a subcharacteristic c′_(i) for an object o_(k).

[0105] If p′_(k,i)≠0, then ${{Rec}_{i}^{\prime} = \frac{\sum\limits_{{l/o_{l}} \in \quad {Aff}_{i}}\left( \frac{\psi \left( {p_{l,i}^{\prime},{Max}_{p}} \right)}{A_{k,1}} \right)}{{Card}\quad \left( {{O\left( c_{i}^{\prime} \right)}\bigcap{Aff}_{i}} \right)}},$

[0106] if not then Rec′_(i)=0.

[0107] 2. Analysis

[0108] Ray Tracing Family of Base Ro

[0109] The base family is a set of characteristics that will be used as a base for expressing the positioning of the other characteristics on the map.

[0110] Reference Object

[0111] When there exists a reference object O_(r) then P_(r)⊂Ro.

[0112] 1. We write R′o, the set Ro in the process of constitution (calculation) and we, therefore, initially set R′o=P_(r)

[0113] 2. Then we add to the set R′o, the characteristics ci having rp_((ex)R′o,i) maximal, i.e., R′o=R′o+{c_(i)∈C/c_(i)∉R′o & rp_((ex)R′o,i) maximal} until the ray tracing set ((R_(R′o)=C) & (Card(R′o)>=3))

[0114] 3. Then Ro=R′o.

[0115] Optimal Base

[0116] In the case of absence of a reference object, WPS calculates an “optimal” base for expressing the positioning of the characteristics.

[0117] 1. R′o is constituted initially by the characteristic c_(i) having the highest Prp_(i),

[0118] 2. Then we add to the set R′o, the characteristics ci having rp_((ex)R′o,i) maximal, i.e., R′o=R′o+{c_(i)∈C/c_(i)∈R′o & rp_((ex)R′o,i) maximal} until the ray tracing set ((R_(R′o)=C) & (Card(R′o)>=3))

[0119] 3. Then Ro=R′o.

[0120] Placement of the Base Ro

[0121] We note EC(A) the convex envelope formed by a set A of points.

[0122] We note R′o, the set of characteristics already placed, initially R′o=Ø

[0123] Calculation of O′_(ref)

[0124] If a reference object exists, we calculate at each iteration the reference point O′_(ref) such that ${\sum\limits_{{j/c_{j}} \in \quad {R^{\prime}o}}{p_{{ref},l}\left( \overset{\_}{C_{j}O_{ref}} \right)}} = \overset{\_}{0}$

[0125] If not ${\sum\limits_{{j/c_{j}} \in \quad {R^{\prime}o}}\left( \overset{\_}{C_{j}O_{ref}^{\prime}} \right)} = \overset{\_}{0}$

[0126] We place in the center, the characteristic c; of the base having the highest Prp_(i).

[0127] Then we place the characteristics c_(i) having rp_((ex)R′o,i) maximal, i.e., R′o=R′o+{c_(i)∈C/c_(i)∉R′o & rp_((exp)R′o,i) maximal.

[0128] 1. if ∃c_(j)∈R′o/rp_((ex)i,j)=0, then C_(i)=C_(j)

[0129] 2. ∀c_(j)∈R′o, |C_(i)C_(j)|>=rp_((ex)i,j)

[0130] 3. C_(i)∉EC(R′o),

[0131] 4. |C_(i)O═_(ref)| is minimal.

[0132] Placement of the Object O_(ref)

[0133] Stemming from the placement of the base Ro, we place the reference object O_(ref) such that ${\sum\limits_{{j/c_{j}} \in \quad {R^{\prime}o}}{p_{{ref},j}\left( \overset{\_}{C_{j}O_{ref}} \right)}} = \overset{\_}{0}$

[0134] In the case of a lack of reference object, one takes into consideration a “virtual” reference object such that ${\sum\limits_{{j/c_{j}} \in \quad {R^{\prime}o}}\left( \overset{\_}{C_{j}O_{ref}} \right)} = \overset{\_}{0}$

[0135]FIG. 1 shows an example of placement of a new characteristic C_(i) of Ro. R_(0,0), R_(0,1), and R_(0,2) represent three characteristics of Ro already placed on the map. The circle enclosing them represents the minimal distance defined in rule 2 (above). O′_(ref) represents the reference point such that ${{\sum\limits_{{j/c_{j}} \in \quad {R^{\prime}o}}{p_{{ref},j}\left( \overset{\_}{C_{j}O_{ref}^{\prime}} \right)}} = \overset{\_}{0}}\quad,$

[0136] taking into account the three points that have already been placed (R_(0,0), R_(0,1) and R_(0,2)). The triangle bringing together the points (R_(0,0), R_(0,1) and R_(0,2)) represents the convex envelope of R′o, written as EC(R′o). The placement of C_(i), written as R_(0,3), is obtained by determining the closest point of O′^(ref) and not being included in the convex envelope nor either the area formed by the three circles.

[0137] Placement of the Characteristics

[0138] We define c_(i) the point corresponding to the characteristic c_(i). We place the characteristics as a function of their links with the base elements Ro.

[0139] We note R′, the set of previously placed characteristics

[0140] Initially R′=Ø

[0141] We choose the characteristics ci in decreasing order of r_(Ro,1)

[0142] i.e., R′=R′+{c_(i)∈C/c_(i)∉R′& r_(Ro,i) maximal}

[0143] The placement of C_(i) is then defined according to the following rules:

[0144] 1. if ∃c_(j)∈Ro/rp_(i,j)=1, then C_(i)=C_(j)

[0145] 2. if ∃c_(j)∈(R′−Ro)/rp_(i,j)=1−ε, then C_(i)=C_(j)

[0146] 3. ∀c_(j)Ro & rp_(i,j)≠0, |C_(i)C_(j)|>=(1/rp_(i,j))−1

[0147] 4. c_(i)

EC(Ro)

[0148] 5. |C_(i)O_(ref)| or minimal.

[0149]FIG. 2 shows an example of placement of a new characteristic C_(i) of {C−Ro}. R_(0,0), R_(0,1), R_(0,2) and R_(0,3) represent three characteristics of the base Ro already placed on the map. The circle surrounding them represents the minimal distance in rule 3 presented above. O′_(ref) represents the reference point such that ${\sum\limits_{{j/c_{1}} \in \quad {R^{\prime}o}}{p_{{ref},1}\left( \overset{\_}{C_{j}O^{\prime}\quad {ref}} \right)}} = \overset{\_}{0}$

[0150] taking into account the already placed points (R_(0,0), R_(0,1), R_(0,2) and R_(0,3)). The polygon grouping together the points (R_(0,0), R_(0,1), R_(0,2) and R_(0,3)) represents the convex envelope of Ro, written EC(Ro). The placement of c_(i) is obtained by determining the closest point of O_(ref) not included in the convex envelope nor in the area formed by the four circles.

[0151] The map is constituted by a set of graphical elements to be displayed: squares, neighbor-hoods and streets in our example of application. These objects can constitute interactive zones that can display menus and submenus.

[0152] Squares

[0153] Each square represents a set of characteristics. Each point c_(i) represents the positioning of the characteristic c₁. Certain characteristics have identical positions: c_(i)=c_(j).

[0154] The positioning of the squares is performed by a relaxation algorithm among the points P1, each point being linked by a force $\sum\limits_{{i/c_{i}} \in \quad {Pl}_{b}}{\sum\limits_{{j/c_{j}} \in \quad {Pl}_{c}}{r\quad p_{i,j}}}$

[0155] We define that the ray of a square is determined by the ray tracing power of the set of characteristics composing it:

[0156] L_((P1b))=Pr_(c(P1b))

[0157] Streets

[0158] Streets connect the squares that are closest to each other. The characteristics of a street are defined by the ray tracing between the squares that it joins (P1 _(b) and P1 _(c)). The streets, thus, represent the importance of the links uniting two squares, i.e., two sets of characteristics. ${Width} = {W_{{Plb},{Plc}} = {\sum\limits_{{i/c_{i}} \in {Pl}_{b}}^{\quad}\quad {\sum\limits_{{j/c_{j}} \in {Pl}_{c}}^{\quad}\left( r_{ij} \right)}}}$

[0159] If W_(P1a,P1b)≦ε′ then there is no street.

[0160] Placement of the Objects

[0161] We define O_(k) as the point corresponding to the object o_(k). O_(k) is placed according to a barycentric principle: ${\sum\limits_{{j/c_{j}} \in C}^{\quad}{p_{kj}\left( \overset{\_}{O_{k}C_{j}} \right)}} = \overset{\_}{O}$

[0162] in which C_(j) is the definitive position of the characteristic c_(i) stemming from the positioning of the squares.

[0163] Neighborhoods

[0164] Each neighborhood Q_(a) is composed of a set of objects. Neighborhoods are defined by determining the sets of objects Q such that ∀o_(k)∈Q ∀o₁∈Q, |o_(k)o_(l)|≦δ in which δ is a distance dependent on the characteristics of the map display device.

[0165] After having defined the objects constituting the neighborhoods, we use—for defining the positioning of the neighborhoods—a relaxation algorithm weighted by the surface area of the neighborhoods Qa such that $S_{Qa} = {\sum\limits_{{k/o_{a}} \Subset Q_{a}}^{\quad}\quad {\sum\limits_{{j/c_{j}} \in C}^{\quad}{\left( {p_{k,i}\Pr_{j}} \right).}}}$

[0166] The delimitation of the neighborhoods is then defined by a Voronoi diagram.

[0167] Calculation of the recommendations by Square

[0168] We define the coefficient of recommendation of a characteristic c_(i) for an object o_(k). This coefficient indicates the level of recommendation: the larger the coefficient, the more pertinent is the recommendation; the smaller the coefficient, the more it is subject to caution.

[0169] If p_(k,i)≠0, then ${Rec}_{i} = \frac{\sum\limits_{{l/o_{i}} \in {Aff}_{i}}^{\quad}\left( \frac{\psi \left( {p_{l,i},{Max}_{p}} \right)}{A_{k,1}} \right)}{{Card}\left( {{O\left( c_{i} \right)}\bigcap{Aff}_{i}} \right)}$

[0170] if not Rec_(i)=0.

[0171] By default, we set ψ(p,Max_(p))=log_(Maxp)(p+1) which minimizes the effect of the weighting.

[0172] We define the coefficient of recommendation of a subcharacteristic c′_(i) for an object o_(k).

[0173] If p′_(k,i)≠0, then ${Rec}_{i}^{\prime} = \frac{\sum\limits_{{l/o_{i}} \in {Aff}_{i}}^{\quad}\left( \frac{\psi \left( {p_{l,i}^{\prime},{Max}_{p}} \right)}{A_{k,1}} \right)}{{Card}\left( {{O\left( c_{i}^{\prime} \right)}\bigcap{Aff}_{i}} \right)}$

[0174] if not Rec′_(i)=0.

[0175] For each square P1 _(b), we calculate the set of recommended characteristics written as C_((rec)b):

[0176] C_((rec)b)={c_(j)∈P1 _(b)/Rec_(j)>Rec_(Min)}

[0177] We classify the set in decreasing order of the Rec_(j) or recommendations of the subcharacteristics:

[0178] C′_((rec)b)={c′_(j)∈C′_(i) & c_(i)∈P1 _(b)/Rec′_(j)>Rec_(Min)}

[0179] We classify the set in decreasing order of the Rec′_(j), in which Rec_(min) is a threshold set by the WPS manager.

[0180] Description of Interfaces

[0181]FIGS. 3, 4 and 5 illustrate examples of interfaces that can be derived from the previously presented methods of calculation.

[0182]FIG. 3 illustrates an example of an interface of the system using the “neighborhood map” analogy in the domain of auction Web sites with examples of menus and submenus.

[0183] The objects correspond to the users of the site (i.e., internauts), the reference object is the current user, the characteristics displayed represent the site headings and the subcharacteristics correspond to the base actions of the user: purchases, sales or bids. The clear Zone (21) is constituted by a set of squares representing the profile of the user, i.e., the headings where he has already entered bids.

[0184] The icon (II) represents the position of the user on the maps in relation to the weightings applied to the characteristics of his profile. By activating the zone (II), the internaut causes the display of the menu (M1) describing the details of the internaut's profile. Activation of the element (SM1.1) of the menu (M1) gives the internaut access to the Web page describing the current user on the site and provides the internaut with personalized services. The elements of the submenus (SM1.2 and SM1.3) provide access to pages describing the bids associated with the internaut's profile.

[0185] The dark zone (Z2) represents headings suggested by the process from analysis of the internaut's affinity group.

[0186] Activation of a square (P1) causes display of a menu (M2) comprising choices (SM2.1, SM2.2) which can be activated to directly access the headings, a choice (SM2.3) to obtain product recommendations based on the analysis of the profiles of the users in the affinity group and a choice (SM2.4) to obtain targeted recommendations implemented by the site. The submenu elements (SM2.3) and (SM2.4) can be activated to gain access to the pages describing the recommended objects.

[0187] The neighborhoods such as the neighborhood (Q1) represent a set of users as a function of their profiles. Activation of a neighborhood (Q1) causes the display of a menu (M3) containing as elements the aliases of the users of this neighborhood. The activation of an element (SM3.1) of this menu enables access to the Web pages describing each of these users.

[0188] The zone (Q3) represents a targeted advertisement defined by the site administrator and the profile of which conforms to that of the user.

[0189]FIG. 4 illustrates an example of interface of the system using the analogy of “neighborhood map” applied to the domain of online commerce Web sites.

[0190] The objects correspond to the users of the site (i.e., the internauts), the reference object is the current user, the displayed characteristics represent the site headings and the subcharacteristics correspond to the products purchased by the users. The clear zone (Z1) is constituted by a set of squares representing the profile of the user, i.e., the headings where he has already implemented purchases (or possibly navigated).

[0191] The icon (I1) represents the position of the user on the map with relation to the weightings applied to the headings of his profile. By activating the zone (I1), the internaut causes the display of a menu describing the detail of the internaut's profile and providing the internaut with to access the pages describing the products associated with the nternaut's profile.

[0192] The dark zone (Z2) represents the headings suggested by the process from the analysis of the profiles of the internaut's affinity group.

[0193] The square (P1) represents a set of headings remaining to be discovered by the internaut. Activation of the square (P1) causes display of a menu making it possible to obtain notably product recommendations based on the analysis of the profiles of the affinity group users or targeted recommendations implemented by the site. The site can add specific menus such as, for example, the best sales of the headings represented by this square.

[0194] The zone (Q3) represents the advertising of a product, targeted and defined by the site administrator and the profile of which conforms to that of the user. Activation of this advertisement cause display of the page describing this advertisement, a page which possibly resides on another site.

[0195]FIG. 5 illustrates an example of interface of the system using the analogy of “store layout” map applied to the domain of online commerce Web sites.

[0196] The objects correspond to the users of the site (i.e., internauts), the reference object is the current user, the displayed characteristics represent the site headings and the subcharacteristics correspond to the products purchased by the users. The clear zone (Z1) is constituted by a set of departments representing the user's profile, i.e., the headings where the user already implemented purchases (or possibly navigated).

[0197] The icon (I1) represents the position of the user on the map in relation to the weightings applied to the headings of the user's profile. By activating the zone (I1), the internaut causes the display of a menu describing the details of the user's profile and allows access the pages describing the products associated with the user's profile.

[0198] The dark zone (Z2) represents the headings suggested by the process from the analysis of the profiles of the internaut's affinity group.

[0199] The department (P1) represents a set of headings remaining to be discovered by the internaut. Activation of the department (P1) causes the display of a menu making available notably product recommendations based on the analysis of the profiles of the users of the affinity group or the targeted recommendations implemented by the site. The site can add specific menus such as, for example, the best sales of the headings represented by this location.

[0200] The icon (I2) (in the form of a question mark) represents the advertising of a product, targeted and defined by the site administrator and the profile of which confirms to that of the user. Activation of this advertisement causes the display of an image representing the advertisement and also provides access to the Web page describing this advertisement, a page which possibly resides on another site.

[0201] These three previously described interfaces can be applied to other types of Web sites such as, for example, recruitment sites, community sites, online brokerage sites or online banking sites.

[0202] Functional description

[0203] We provide details below regarding the functional architecture of a system for the implementation of the invention.

[0204] The system can be broken into two server subsystems which are independent in their operations: the precalculation server (FIG. 1) and the map server (FIG. 2). This system is completed by a client component called the “map displayer” and a set of administration tools.

[0205] The manager (S1) of WPS data is a server component also referred to as a “dictionary component”.

[0206] It uses as input data: user identifier, map name, identifier of objects. In response it provides information on or descriptions of the objects.

[0207] This is the component which makes the link between the physical data (BD) and the WPS logical data which will be used by the other WPS components.

[0208] This access component must be sufficiently open to confront the various solutions found in practice. For this purpose, connectors enable links between the WPS data model and the external platforms. Standard connectors are provided (such as a generic -ODBC or JDBC-access and native Oracle initially), but also openings with API (C++, Java) or XML. Specific connectors can be developed for the most widely available content management platforms.

[0209] The proposed system requires the installation of a WPS database for storing the specific data such as:

[0210] Precalculation data on the affinity among the profiles,

[0211] Data on advertisements and recommendations.

[0212] The multiplicity of sources of data (and, thus, of the descriptions of profiles) and the heterogeneous nature of the characteristics of the profiles impose a very flexible data model. The definition of a data meta-model and the creation of a meta-model dictionary are indispensable elements for the adaptation of this technology to the different application domains (in particular, the implementation of connectors).

[0213] The WPS dictionary contains for each map the data model of the map and the information for accessing the data describing the characteristics, user profile, advertising and recommendations. It does not contain the data themselves which are stored either in the WPS database or in an external database.

[0214] The affinity precalculator (S2) is a server component that accesses the data describing the profiles and stores the coefficient of affinity between each pair of profiles.

[0215] This component is implemented to avoid a bottleneck on the filtering time in the form of a background server processor which precalculates on a permanent basis the coefficients of affinities between the profiles.

[0216] From the user identifier, the server system can read the characteristics of the user profile. This module enables determination of the affinity group (the close profiles) to limit the volume of data that is processed in the next step.

[0217] This first filtering is principally based on:

[0218] possibly specific criteria of membership in a given group (for example, sociodemographic criteria: membership in the same age classification, the same geographic situation or the same socioprofessional category),

[0219] the coefficient of affinity between two profiles,

[0220] an affinity threshold below which the affinity between profiles is considered to be zero.

[0221] It is this affinity coefficient that will be stored in the WPS database for each profile pair (i,j) to ensure a good response time of the filtering engine. The affinity threshold and the membership criteria make it possible to limit the affinity coefficient number.

[0222] Storage of the affinity coefficients also ensures a rapid startup.

[0223] It is also necessary to define a process for updating these coefficients in response to the updating of the original data (profiles).

[0224] The WPS filtering engine (S3) is a server component that calculates the affinity groups and the associated information for a particular map determined by the user identifier, the name of the map. The filtering engine must bring together all of the information on the profiles to be analyzed: user profiles, recommendation profiles, advertising profiles and the like.

[0225] It accesses the affinity coefficients stored in the WPS database and determines from them the affinity group associated with the current user to accomplish this. Then it requests from the WPS data manager the information pertaining to these profiles for transmission to the analyzer (S4).

[0226] In all cases, the raw data pertaining to the retained profiles must be projected in memory to ensure the analysis time. The memory consumption of this component, therefore, depends essentially on the size of the affinity group.

[0227] The analysis and recommendation engine (S4) is a server component with an essential function. It analyzes the data provided by the component (S3) to define a first placement of the characteristics and the reference object (i.e., the current user). It calculates the information required for the definitive placement of the objects and characteristics as well as the recommendations to transmit them to the map generator.

[0228] The memory consumption of this module is one of the important factors in the dimensioning of the servers. The memory used is essentially composed of the description of the analyzed profiles and the ray tracing matrices. This memory is allocated solely during the calculation of a map and freed up its generation.

[0229] The map generator (S5) is a server component responsible for the synthesis of the WPS map: It constructs the image in the vectorial direction (positioning in multidimensional space), ensuring the lack of overlap and maximal readability. It selects the graphics (according to the characteristics of the map and the client machine). It calculates and integrates the dynamic and static recommendations (according to the characteristics of the map) and, in particular, the advertising images. It generates a file describing the map both in terms of its graphical appearance (graphical objects) and at the level of its interaction (interactive zones, menus, submenus). The file format can be based on XML.

[0230] The map displayer is a client component constructing on the client machine the global image of the map from the vectorial map as well as the interaction zones (contextual menus) from the information transmitted in the file generated by the component (S5).

[0231] This module also records the user's actions on the map: selection of a recommendation, click on an advertising zone, access to a trend and the like.

[0232] This module is subjected the most to constraints with regard to platforms and types of navigators to support. Implementation in the form of a Java 1 applet appears to be the best alternative to ensure maximal portability.

[0233] The recorder of user actions is a server component which receives the information on the user actions transmitted by the display component (S6) and stores it.

[0234] The recording of the internauts' actions on the WPS map is the determinant element for measuring the return on the investment in the system. The genericity of a SGBD outing must enable analysis of the data obtained from classic analysis tools. The WPS system configuration manager system is a component constituted by a simple graphical interface designed for the site administrators and allowing configuration of the connections and the data dictionary.

[0235] The WPS map configuration manager is a component constituted by a simple graphical interface allowing the site administrators or integrators to configure the maps and their particular characteristics such as, for example:

[0236] 1) Data

[0237] a) Description of the data

[0238] b) Methods for accessing the data

[0239] 2) Form

[0240] a) “You are here” image

[0241] b) Images and symbols representing the squares

[0242] i) optionally according to the square properties

[0243] c) Images and symbols representing the neighborhoods

[0244] i) optionally according to the neighborhood properties

[0245] d) Colors of the map

[0246] 3) Interactivity

[0247] a) Definition of menus and submenus of squares

[0248] i) Dynamic definitions (according to the profile)

[0249] ii) Static recommendations (from the WPS site)

[0250] b) Definition of the menus and submenus of neighborhoods

[0251] The map marketing workshop is a component constituted by a simple graphical interface allowing the site's marketing department to modify the map environment in order to animate the site

[0252] Adjustment of marketing targets in relation to traffic

[0253] Installation of promotions (suggestions fixed outside of the user profile)

[0254] by means of the functionalities of targeted recommendations and advertisements. The marketing workshop integrates a data presentation module which exploits the information on the users' behavior in relation to the WPS map. It generates graphics and reports such as, for example, the number of clicks on the WPS map, the distribution of these clicks in relation to the WPS recommendations, etc. 

1. A process for generating a dynamic and contextualized cartography of information comprising: a step of collaborative filtration which includes determining at least one affinity group formed from a set of profiles, wherein the distance from the profile to a reference object is less than a threshold value, a step of correlation analysis of characteristics of the reference object and objects of the affinity group projecting the characteristics into a multidimensional space, and a step of construction of an image composed of activatable zones representing the characteristics of the reference object and of all or part of the characteristics of the affinity group, and zones representing links among the characteristics, each zone providing direct or indirect access to one or more digital files.
 2. The process according to claim 1, wherein the image further comprises activatable zones representing the objects of the affinity group.
 3. The process according to claim 1, further comprising describing the zones representing the characteristics in the form of squares, the zones representing the objects by neighborhoods and the zones representing the links between characteristics by streets.
 4. The process according to claim 1, further comprising describing the zones representing the characteristics in the form of departments, the zone representing the objects by aisles, the zones representing the links between characteristics by polygons in the aisles.
 5. The process according to claim 1, further comprising calculating implicit characteristics of a user by recording in a memory parameters associated with descriptors of historical actions of said user.
 6. The process according to claim 5, wherein the descriptors of the historical actions of said user are constituted of identifiers of pages consulted by said user.
 7. The process according to claim 1, further comprising calculating explicit characteristics of a user by recording in a memory parameters defined from a preferences table.
 8. The process according to claim 1, wherein the profiles are sets of weighted characteristics.
 9. The process according to claim 1, wherein each object o_(k) is described by a vector (p_(k,0), Σ, p_(k,i), Σ, p_(k,p−1)) in which p_(k,i) is a weighting describing the value of characteristic c_(i) for the object o_(k).
 10. The process according to claim 1, further comprising commanding the display, in a zone representing the characteristics, of a menu comprising characteristics or subcharacteristics recommended as a function of profiles determined by an administrator.
 11. The process according to claim 1, further comprising commanding the display, in a zone representing the characteristics, of a menu comprising a set of characteristics or subcharacteristics recommended by an affinity group.
 12. The process according to claim 11, wherein the administrator can define the content or method defining the content of the menu displayed in a zone representing characteristics or objects.
 13. The process according to claim 10, wherein a recommended characteristic is not taken into account for calculation of positioning of the characteristics.
 14. The process according to claim 10, wherein a recommended characteristic is taken into account for calculation of positioning of characteristics.
 15. The process according to claim 1, wherein the object is a user of a Web site and the characteristics and subcharacteristics are deduced directly or indirectly from the user's actions on the site. 